package com.hw.one.dam2.service;

import com.hw.one.core.result.MsgResult;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

/**
 * 巡检设备 Service
 * 
 * @author alicke
 *
 */
public interface IPatrolDeviceService {

	/**
	 * 根据所属区域编码，获取巡检设备信息
	 * 
	 * @param paraMap{regionCode:区域编码；deviceType：设备类型【mobileType:手机；
	 *            patrolCarType：巡检车；uavType：无人机】}
	 * @return
	 * @throws Exception
	 */
	List<Map<String, Object>> findPatrolDeviceInfoByRegionCode(Map<String, Object> paraMap) throws Exception;


	
	/**
	 * 根据所属区域编码和设备类型，获取巡检设备信息
	 * 
	 * @param paraMap{regionCode:区域编码；deviceType
	 * @return
	 * @throws Exception
	 */
	public List<Map<String,Object>> findDeviceNumByRegionCodeAndType(Map<String,Object> paraMap) throws Exception;
	
	

	/**
	 * 根据所属区域编码，获取巡检设备信息
	 *
	 * @param paraMap{regionCode:区域编码；deviceType：设备类型【mobileType:手机；
	 *            patrolCarType：巡检车；uavType：无人机】}
	 * @return
	 * @throws Exception
	 */
	List<Map<String, Object>> findPatrolDeviceListByRegionCode(Map<String, Object> paraMap) throws Exception;

	/**
	 * 根据时间和设备id,查询设备的轨迹信息
	 * @param paramMap
	 * @return
	 * @throws Exception
	 */
	Map<String, Object> findPatrolDeviceTrack(Map<String, Object> paramMap) throws Exception;

	/**
	 * 保存巡检设备表
	 * @author 李亚坤
	 * @createtime 2017年7月18日11:38:39
	 * @param request
	 * @throws Exception
	 */
	MsgResult savePatrolDeviceInfo(HttpServletRequest request) throws Exception;

	/**
	 * 保存巡检设备 轨迹信息
	 * @author 李亚坤
	 * @createtime 2017年7月18日15:05:30
	 * @param request
	 * @return
	 * @throws Exception
	 */
	MsgResult savePatrolDeviceTrackData(HttpServletRequest request) throws Exception;

	/**
	 * 根据设备编码查询设备信息
	 * @author 李亚坤
	 * @createtime 2017年7月18日15:55:30
	 * @param request
	 * @return
	 * @throws Exception
	 */
	MsgResult findPatrolDeviceInfoByDeviceCode(HttpServletRequest request) throws Exception;
	/**
	 * 根据设备编码查询设备巡检轨迹信息
	 * @author 李亚坤
	 * @createtime 2017年7月18日15:55:30
	 * @param request
	 * @return
	 * @throws Exception
	 */
	MsgResult findPatrolTrackByDeviceCode(HttpServletRequest request) throws Exception;

}
